package com.itheima.stock.vo.resp;

import com.github.pagehelper.PageInfo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
/**
 * 分页工具类
 */
public class PageResult<T>{

    //总记录数
    private Long totalRows;

    //总页数
    private Integer totalPages;

    //当前第几页
    private Integer pageNum;

    //每页记录数
    private Integer pageSize;

    //当前页记录数
    private Integer size;

    //结果集
    private List<T> rows;


    /**
     * 分页数据组装
     *
     * @param pageInfo
     * @return
     */
    //构造方法
    public PageResult(PageInfo<T> pageInfo) {
        totalRows = pageInfo.getTotal();  //总记录数
        totalPages = pageInfo.getPages(); //总页数
        pageNum = pageInfo.getPageNum();    //当前页数,第几页
        pageSize = pageInfo.getPageSize();  //每页显示条数
        size = pageInfo.getSize();          //当前页显示条数
        rows = pageInfo.getList();          //获取查询的全部数据
    }

}
